# -*- coding: utf-8 -*-

# Python的函数不但可以返回int、str、list、dict等数据类型，还可以返回函数
def calc_prod(lst):
    def lazy_prod():
        def f(x, y):
            return x * y
        return reduce(f, lst, 1)
    return lazy_prod

f = calc_prod([1, 2, 3, 4])
print f()
